<?php

App::uses('AuthComponent', 'Controller/Component');
class UsersController extends AppController {

    public function add() {
        if ($this->request->is('post')) { //Si hay $_POST
            $this->User->create();
            if ($this->User->save($this->request->data)) { //Si se puede crear nuevo usuario
                $this->Session->setFlash('El nuevo usuario ha sido creado');
                $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash('No se pudo crear el nuevo usuario');
                 
            }
        }
    }

    public function index() {
        
    }

    public function edit($id = null) {
        if (!$id) {
            throw new NotFoundException(__('Usuario inválido'));
        }
        $usuario = $this->User->findById($id);
        if (!$usuario) {
            throw new NotFoundException(__('Usuario inválido'));
        }
        if ($this->request->is('user') || $this->request->is('put')) {
            $this->User->id = $id;
            if ($this->User->save($this->request->data)) {
                $this->Session->setFlash('El usuario ha sido editado');
                $this->redirect(array('action' => 'index'));
            } else {
                $this->Session->setFlash('No se pudo editar el usuario');
            }
        }
        if (!$this->request->data) {
            $this->request->data = $usuario;
        }
    }

    public function login() {
        if ($this->request->is('post')) {
            if ($this->Auth->login()) {
                $this->redirect(array('controller'=>'index', 'action'=>'index'));
            } else {
                $this->Session->setFlash(__('Usuario o contraseña inválidos, inténtelo nuevamente'));
            }
        }
    }

    public function logout() {
        $this->redirect($this->Auth->logout());
    }

    public function beforeFilter() {
    parent::beforeFilter();
    $this->Auth->allow('add'); // Letting users register themselves
    }
}

?>